<table class="table table-bordered">
    <thead>
        <tr>
            <th class="text-left" style="width: 20%">Key</th>
            <th class="text-left" style="width: 15%">Default</th>
            <th class="text-left" style="width: 65%">Description</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td><h5>web.access-control-allow-origin</h5></td>
            <td style="word-wrap: break-word;">"*"</td>
            <td>Access-Control-Allow-Origin header for all responses from the web-frontend.</td>
        </tr>
        <tr>
            <td><h5>web.address</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>Address for runtime monitor web-frontend server.</td>
        </tr>
        <tr>
            <td><h5>web.backpressure.cleanup-interval</h5></td>
            <td style="word-wrap: break-word;">600000</td>
            <td>Time, in milliseconds, after which cached stats are cleaned up if not accessed.</td>
        </tr>
        <tr>
            <td><h5>web.backpressure.delay-between-samples</h5></td>
            <td style="word-wrap: break-word;">50</td>
            <td>Delay between stack trace samples to determine back pressure in milliseconds.</td>
        </tr>
        <tr>
            <td><h5>web.backpressure.num-samples</h5></td>
            <td style="word-wrap: break-word;">100</td>
            <td>Number of stack trace samples to take to determine back pressure.</td>
        </tr>
        <tr>
            <td><h5>web.backpressure.refresh-interval</h5></td>
            <td style="word-wrap: break-word;">60000</td>
            <td>Time, in milliseconds, after which available stats are deprecated and need to be refreshed (by resampling).</td>
        </tr>
        <tr>
            <td><h5>web.checkpoints.history</h5></td>
            <td style="word-wrap: break-word;">10</td>
            <td>Number of checkpoints to remember for recent history.</td>
        </tr>
        <tr>
            <td><h5>web.history</h5></td>
            <td style="word-wrap: break-word;">5</td>
            <td>Number of archived jobs for the JobManager.</td>
        </tr>
        <tr>
            <td><h5>web.log.path</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>Path to the log file (may be in /log for standalone but under log directory when using YARN).</td>
        </tr>
        <tr>
            <td><h5>web.refresh-interval</h5></td>
            <td style="word-wrap: break-word;">3000</td>
            <td>Refresh interval for the web-frontend in milliseconds.</td>
        </tr>
        <tr>
            <td><h5>web.ssl.enabled</h5></td>
            <td style="word-wrap: break-word;">true</td>
            <td>Flag indicating whether to override SSL support for the JobManager Web UI.</td>
        </tr>
        <tr>
            <td><h5>web.submit.enable</h5></td>
            <td style="word-wrap: break-word;">true</td>
            <td>Flag indicating whether jobs can be uploaded and run from the web-frontend.</td>
        </tr>
        <tr>
            <td><h5>web.timeout</h5></td>
            <td style="word-wrap: break-word;">10000</td>
            <td>Timeout for asynchronous operations by the WebRuntimeMonitor in milliseconds.</td>
        </tr>
        <tr>
            <td><h5>web.tmpdir</h5></td>
            <td style="word-wrap: break-word;">System.getProperty("java.io.tmpdir")</td>
            <td>Flink web directory which is used by the webmonitor.</td>
        </tr>
        <tr>
            <td><h5>web.upload.dir</h5></td>
            <td style="word-wrap: break-word;">(none)</td>
            <td>Directory for uploading the job jars. If not specified a dynamic directory will be used under the directory specified by JOB_MANAGER_WEB_TMPDIR_KEY.</td>
        </tr>
    </tbody>
</table>
